A peer to peer (P2P) network is a self-organizing network. A peer is a node on a P2P overlay network and provides the distributed resource storing and P2P message routing function. If a peer (hereinafter referred to as the joining peer) needs to join a P2P overlay network, it needs to obtain the information about a peer on this overlay network. Then, the peer joins the overlay network through this peer on the overlay network. The peer on the overlay network that the joining peer firstly connects to is a bootstrap peer. The bootstrap peer may be a common peer, or a peer deployed by a service provider.
The Internet Engineering Task Force P2P Session Initiation Protocol (IETF P2PSIP) working group proposes the method for obtaining the information about the bootstrap peer through a bootstrap server. The work process is as follows:
First, the joining peer sends a query request to the bootstrap server, and obtains a bootstrap peer list returned by the bootstrap server.
Then, the joining peer sends a join request to the peer (namely, the bootstrap peer) in the obtained bootstrap peer list.
After receiving the request, the bootstrap peer forwards the join request on the P2P overlay network to a responsible peer on the P2P overlay network so as to help the joining peer to join the overlay network.
The processing procedure in the prior art is as follows: Skype (instant messaging software) uses a few servers deployed worldwide as the bootstrap peers. All Skype clients save addresses of these supper bootstrap peers. A client may attempt to join the overlay network each time through a peer cached previously and existing on the overlay network. If the client fails to join the overlay network, the deployed well-known bootstrap peer may act as a reliable peer to help the client to join the P2P overlay network. The problem of the bootstrap peer failure does not exist because the function of the bootstrap peer is powerful and each bootstrap peer may process the join requests from a large number of clients at the same time.
One problem noted by this arrangement is that stable peers are deployed to act as the bootstrap peers. Therefore, the stability and reliability are determined by the deployed peers. Skype clients firstly attempt to join the overlay network through the cached peers that already exist on the P2P network during the last access. If these peers are not on the overlay network, an access delay is produced. In addition, in P2PSIP scenarios, the bootstrap peers may all be common peers. These peers may leave the overlay network anytime, and even become failed or busy. Consequently, the joining peer cannot access the network.